<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of DaoSolicitud
 *
 * @author amartinez
 */
include '../../../controlador/php/conexion/Conexion.php';
include 'DaoHistorial.php';

class Solicitud {
    private $SolicitudId;
    private $ServicioId;
    private $NecesidadId;
    private $EstadoId;
    private $Descripcion;
    private $Justificacion;
    private $Turno;
    private $MecanismoId;
    private $PrioridadId;
    private $TipoCasoId;
    private $Fecha;
    private $DeteccionId;
    private $Oportunidad;
    private $TipoSolicitudId;
    private $TipoNecesidadId;
    private $FechaFin;
    private $UsuarioRegistro;
    private $UsuarioSolicitud;
    private $UsuarioAsignado;
    private $NecesidadFin;
    private $Observacion;
    private $Categoria;
            
    function __construct($SolicitudId, $ServicioId, $NecesidadId, $EstadoId, $Descripcion, $Justificacion, $Turno, $MecanismoId, $PrioridadId, $TipoCasoId, $Fecha, $DeteccionId, $Oportunidad, $TipoSolicitudId, $TipoNecesidadId, $FechaFin, $UsuarioRegistro, $UsuarioSolicitud, $UsuarioAsignado, $NecesidadFin, $Observacion, $Categoria) {
        $this->SolicitudId = $SolicitudId;
        $this->ServicioId = $ServicioId;
        $this->NecesidadId = $NecesidadId;
        $this->EstadoId = $EstadoId;
        $this->Descripcion = $Descripcion;
        $this->Justificacion = $Justificacion;
        $this->Turno = $Turno;
        $this->MecanismoId = $MecanismoId;
        $this->PrioridadId = $PrioridadId;
        $this->TipoCasoId = $TipoCasoId;
        $this->Fecha = $Fecha;
        $this->DeteccionId = $DeteccionId;
        $this->Oportunidad = $Oportunidad;
        $this->TipoSolicitudId = $TipoSolicitudId;
        $this->TipoNecesidadId = $TipoNecesidadId;
        $this->FechaFin = $FechaFin;
        $this->UsuarioRegistro = $UsuarioRegistro;
        $this->UsuarioSolicitud = $UsuarioSolicitud;
        $this->UsuarioAsignado = $UsuarioAsignado;
        $this->NecesidadFin = $NecesidadFin;
        $this->Observacion = $Observacion;
        $this->Categoria = $Categoria;
    }

            
    function getSolicitudId() {
        return $this->SolicitudId;
    }

    function getServicioId() {
        return $this->ServicioId;
    }

    function getNecesidadId() {
        return $this->NecesidadId;
    }

    function getEstadoId() {
        return $this->EstadoId;
    }

    function getDescripcion() {
        return $this->Descripcion;
    }

    function getJustificacion() {
        return $this->Justificacion;
    }

    function getTurno() {
        return $this->Turno;
    }

    function getMecanismoId() {
        return $this->MecanismoId;
    }

    function getPrioridadId() {
        return $this->PrioridadId;
    }

    function getTipoCasoId() {
        return $this->TipoCasoId;
    }

    function getFecha() {
        return $this->Fecha;
    }

    function getDeteccionId() {
        return $this->DeteccionId;
    }

    function getOportunidad() {
        return $this->Oportunidad;
    }

    function getTipoSolicitudId() {
        return $this->TipoSolicitudId;
    }

    function getTipoNecesidadId() {
        return $this->TipoNecesidadId;
    }

    function getFechaFin() {
        return $this->FechaFin;
    }

    function getUsuarioRegistro() {
        return $this->UsuarioRegistro;
    }

    function getUsuarioSolicitud() {
        return $this->UsuarioSolicitud;
    }

    function getUsuarioAsignado() {
        return $this->UsuarioAsignado;
    }

    function getNecesidadFin() {
        return $this->NecesidadFin;
    }

    function getObservacion() {
        return $this->Observacion;
    }

    function getCategoria() {
        return $this->Categoria;
    }

    function setSolicitudId($SolicitudId) {
        $this->SolicitudId = $SolicitudId;
    }

    function setServicioId($ServicioId) {
        $this->ServicioId = $ServicioId;
    }

    function setNecesidadId($NecesidadId) {
        $this->NecesidadId = $NecesidadId;
    }

    function setEstadoId($EstadoId) {
        $this->EstadoId = $EstadoId;
    }

    function setDescripcion($Descripcion) {
        $this->Descripcion = $Descripcion;
    }

    function setJustificacion($Justificacion) {
        $this->Justificacion = $Justificacion;
    }

    function setTurno($Turno) {
        $this->Turno = $Turno;
    }

    function setMecanismoId($MecanismoId) {
        $this->MecanismoId = $MecanismoId;
    }

    function setPrioridadId($PrioridadId) {
        $this->PrioridadId = $PrioridadId;
    }

    function setTipoCasoId($TipoCasoId) {
        $this->TipoCasoId = $TipoCasoId;
    }

    function setFecha($Fecha) {
        $this->Fecha = $Fecha;
    }

    function setDeteccionId($DeteccionId) {
        $this->DeteccionId = $DeteccionId;
    }

    function setOportunidad($Oportunidad) {
        $this->Oportunidad = $Oportunidad;
    }

    function setTipoSolicitudId($TipoSolicitudId) {
        $this->TipoSolicitudId = $TipoSolicitudId;
    }

    function setTipoNecesidadId($TipoNecesidadId) {
        $this->TipoNecesidadId = $TipoNecesidadId;
    }

    function setFechaFin($FechaFin) {
        $this->FechaFin = $FechaFin;
    }

    function setUsuarioRegistro($UsuarioRegistro) {
        $this->UsuarioRegistro = $UsuarioRegistro;
    }

    function setUsuarioSolicitud($UsuarioSolicitud) {
        $this->UsuarioSolicitud = $UsuarioSolicitud;
    }

    function setUsuarioAsignado($UsuarioAsignado) {
        $this->UsuarioAsignado = $UsuarioAsignado;
    }

    function setNecesidadFin($NecesidadFin) {
        $this->NecesidadFin = $NecesidadFin;
    }

    function setObservacion($Observacion) {
        $this->Observacion = $Observacion;
    }

    function setCategoria($Categoria) {
        $this->Categoria = $Categoria;
    }

                    
    function CrearSolicitud($Cate,$OidAgenda){
        
        session_start();
        
        $con = new Conexion();
        
        
        
        if($this->NecesidadFin == 1){
           
            $Fecha = $this->Fecha;
        
            /*Se valida si la fecha viene vacia
              1: GETDATE()
              2: $this->Fecha
            */
            
            //if($Fecha == 1){
                
                //$FechaActividad = "GETDATE()";
                
           // }else{
                
                $FechaActividad = $Fecha;
                
            //}
            
            $FechaFin = date('Y-m-d  H:i:s',strtotime($FechaActividad));
            
            $CrearSolicitud = "INSERT INTO DnSoliServicio_new(ServicioOid,NecesidadOid,EstadoOid,SsDescripcion,TurnoOid,MecDeteccionOid,PrioridadOid,TipCasoOid,SsFechaC,RDeteccionOid,TipoSolicitudOid,TipNecesidadOid,UsuRegOid,UsuSoliOid,UsuAsigOid,SsNecesidadFin,OidCatServicio)
                               VALUES('".$this->ServicioId."','".$this->NecesidadId."','1','".$this->Descripcion."',NULL,'".$this->MecanismoId."',NULL,NULL,'".$FechaFin."','".$OidAgenda."','".$this->TipoSolicitudId."','".$this->TipoNecesidadId."','".$_SESSION['usuario']."','".$this->UsuarioSolicitud."','".$_SESSION['usuario']."','".$this->NecesidadFin."',".$this->Categoria.")";
             $con->query($CrearSolicitud);
             
             $ConsultarOid = "SELECT SCOPE_IDENTITY () Oid";
             $Oid = $con ->query($ConsultarOid);
                
             while ($Oid2 = mssql_fetch_array($Oid)){
                   $OidSolicitud = $Oid2['Oid'];
             }
             $EditarSolicitud = "UPDATE DnSoliServicio_new
                                 SET EstadoOid = '2'
                                 WHERE Oid = '".$OidSolicitud."'";
             $con ->query($EditarSolicitud);
        }
        else{
            
        $ValidarCategoria = "SELECT C.CsNombre,C.CsAleatorio
                             FROM DnCatServicio_new AS C 
                             WHERE C.Oid =".$Cate;
        $res = $con ->query($ValidarCategoria);
        
         while ($res2= mssql_fetch_array($res)){
             
             $Aleatorio = $res2['CsAleatorio'];
             $Categoria = $res2['CatServicioOid'];
             
         }
         
         if($Aleatorio == 1){
            
                $UsuarioAleatorio = "SELECT TOP 1 COUNT(CatServicioOid)AS CATEGORIA,G.UsuarioOid,C.CsNombre,CatServicioOid
                                     FROM DnGruNecesidad_new AS G 
                                     INNER JOIN DnCatServicio_new AS C ON G.CatServicioOid = C.Oid
                                     WHERE CatServicioOid = '".$Cate."'
                                     GROUP BY G.UsuarioOid,C.CsNombre,CatServicioOid
                                     ORDER BY NEWID();";
                $resp = $con ->query($UsuarioAleatorio);
             
             while ($resp2= mssql_fetch_array($resp)){
             
                $Usuario = $resp2['UsuarioOid'];
            }
                $CrearSolicitud = "INSERT INTO DnSoliServicio_new(ServicioOid,NecesidadOid,EstadoOid,SsDescripcion,TurnoOid,MecDeteccionOid,PrioridadOid,TipCasoOid,SsFechaC,RDeteccionOid,TipoSolicitudOid,TipNecesidadOid,UsuRegOid,UsuSoliOid,UsuAsigOid,SsNecesidadFin,OidCatServicio)
                                   VALUES('".$this->ServicioId."','".$this->NecesidadId."','1','".$this->Descripcion."',NULL,'".$this->MecanismoId."',NULL,NULL,GETDATE(),'".$OidAgenda."','".$this->TipoSolicitudId."','".$this->TipoNecesidadId."','".$_SESSION['usuario']."','".$this->UsuarioSolicitud."','".$Usuario."','".$this->NecesidadFin."',".$this->Categoria.")";
                $con->query($CrearSolicitud);
                
                $ConsultarOid = "SELECT SCOPE_IDENTITY () Oid";
                $Oid = $con ->query($ConsultarOid);
                
                while ($Oid2 = mssql_fetch_array($Oid)){
                    $OidSolicitud = $Oid2['Oid'];
                }
                $EditarSolicitud = "UPDATE DnSoliServicio_new
                                    SET EstadoOid = '2'
                                    WHERE Oid = '".$OidSolicitud."'";
                $con ->query($EditarSolicitud);
         }else if($Aleatorio != 1){
             
             $UsuarioCategoria = "SELECT UsuarioGlobal,CAT.UsuarioOid AS USUASIGCATEGORIA,UGC.OidUsuario AS USUARIOGLOBAL
                                  FROM DnCatServicio_new AS CAT LEFT OUTER JOIN DnTipNecesidad_new AS TDN ON CAT.TipNecesidadOid = TDN.Oid
                                                                LEFT OUTER JOIN DnUsuGbCate_New AS UGC ON TDN.Oid = UGC.OidTipNecesidad
                                  WHERE CAT.Oid = '".$Cate."'";
             $respu = $con ->query($UsuarioCategoria);
             
             while ($respu2= mssql_fetch_array($respu)){
             
               $UsuarioC = $respu2['USUASIGCATEGORIA'];
               $UsuarioGlobal = $respu2['USUARIOGLOBAL'];
               $TieneUsuarioGlobal = $respu2['UsuarioGlobal'];
               
            }
            
            if($TieneUsuarioGlobal == 1){
                
                $UsuarioFinal = $UsuarioGlobal;
                
            }else if($TieneUsuarioGlobal == 0){
                
                $UsuarioFinal = $UsuarioC;
                
            }
            
            $CrearSolicitud = "INSERT INTO DnSoliServicio_new(ServicioOid,NecesidadOid,EstadoOid,SsDescripcion,TurnoOid,MecDeteccionOid,PrioridadOid,TipCasoOid,SsFechaC,RDeteccionOid,TipoSolicitudOid,TipNecesidadOid,UsuRegOid,UsuSoliOid,UsuAsigOid,SsNecesidadFin,OidCatServicio)
                               VALUES('".$this->ServicioId."','".$this->NecesidadId."','1','".$this->Descripcion."',NULL,'".$this->MecanismoId."',NULL,NULL,GETDATE(),'".$OidAgenda."','".$this->TipoSolicitudId."','".$this->TipoNecesidadId."','".$_SESSION['usuario']."','".$this->UsuarioSolicitud."','".$UsuarioFinal."','".$this->NecesidadFin."',".$this->Categoria.")";
            $con->query($CrearSolicitud);
            
            $ConsultarOid = "SELECT SCOPE_IDENTITY () Oid";
            $Oid = $con ->query($ConsultarOid);
                
              while ($Oid2 = mssql_fetch_array($Oid)){
                    $OidSolicitud = $Oid2['Oid'];
               }
               $EditarSolicitud = "UPDATE DnSoliServicio_new
                                    SET EstadoOid = '2'
                                    WHERE Oid = '".$OidSolicitud."'";
               $con ->query($EditarSolicitud);
         }
         $con->cerrarConexion();
         
        }
      }

    
    function CrearSolicitudCliente($Cate,$TipoNecesidadId){
        
        session_start();
        
        $con = new Conexion();
        
        $ValidarCategoria = "SELECT C.CsNombre,C.CsAleatorio
                             FROM DnCatServicio_new AS C 
                             WHERE C.Oid =".$Cate;
        $res = $con ->query($ValidarCategoria);
        
         while ($res2= mssql_fetch_array($res)){
             
             $Aleatorio = $res2['CsAleatorio'];
             $Categoria = $res2['CatServicioOid'];
         }
         
         if($Aleatorio == 1){
             
             $UsuarioAleatorio = "SELECT TOP 1 COUNT(CatServicioOid)AS CATEGORIA,G.UsuarioOid,C.CsNombre,CatServicioOid
                                  FROM DnGruNecesidad_new AS G 
                                  INNER JOIN DnCatServicio_new AS C ON G.CatServicioOid = C.Oid
                                  WHERE CatServicioOid = '".$Cate."'
                                  GROUP BY G.UsuarioOid,C.CsNombre,CatServicioOid
                                  ORDER BY NEWID();";
             $resp = $con ->query($UsuarioAleatorio);
             
             while ($resp2= mssql_fetch_array($resp)){
             
                $Usuario = $resp2['UsuarioOid'];
            }
                $CreaSolicitud = "INSERT INTO DnSoliServicio_new(ServicioOid,TipNecesidadOid,SsDescripcion,SsFechaC,UsuRegOid,EstadoOid,UsuAsigOid,OidCatServicio)VALUES('".$this->ServicioId."','".$TipoNecesidadId ."','".$this->Descripcion."',GETDATE(),'".$_SESSION['usuario']."',1,'".$Usuario."',".$Cate.")";
                $con->query($CreaSolicitud);
                
                $ConsultarOid = "SELECT SCOPE_IDENTITY () Oid";
                $Oid = $con ->query($ConsultarOid);
                
                while ($Oid2 = mssql_fetch_array($Oid)){
                    $OidSolicitud = $Oid2['Oid'];
                }
                $EditarSolicitud = "UPDATE DnSoliServicio_new
                                    SET EstadoOid = '2'
                                    WHERE Oid = '".$OidSolicitud."'";
                $con -> query($EditarSolicitud);
            
            }else{
                
                $UsuarioCategoria = "SELECT UsuarioGlobal,CAT.UsuarioOid AS USUASIGCATEGORIA,UGC.OidUsuario AS USUARIOGLOBAL
                                    FROM DnCatServicio_new AS CAT LEFT OUTER JOIN DnTipNecesidad_new AS TDN ON CAT.TipNecesidadOid = TDN.Oid
                                                                  LEFT OUTER JOIN DnUsuGbCate_New AS UGC ON TDN.Oid = UGC.OidTipNecesidad
                                    WHERE CAT.Oid = '".$Cate."'";
                $respu = $con ->query($UsuarioCategoria);

                while ($respu2= mssql_fetch_array($respu)){

                 $UsuarioC = $respu2['USUASIGCATEGORIA'];
                 $UsuarioGlobal = $respu2['USUARIOGLOBAL'];
                 $TieneUsuarioGlobal = $respu2['UsuarioGlobal'];

               }

               if($TieneUsuarioGlobal == 1){

                  $UsuarioFinal = $UsuarioGlobal;

               }else if($TieneUsuarioGlobal == 0){

                  $UsuarioFinal = $UsuarioC;

               }
            
                 $CrearSolicitud = "INSERT INTO DnSoliServicio_new(ServicioOid,TipNecesidadOid,SsDescripcion,SsFechaC,UsuRegOid,EstadoOid,UsuAsigOid,OidCatServicio,MecDeteccionOid)VALUES('".$this->ServicioId."',".$TipoNecesidadId .",'".$this->Descripcion."',GETDATE(),'".$_SESSION['usuario']."',1,'".$UsuarioFinal."',".$Cate.",2)";
                 $con->query($CrearSolicitud);
                 
                 $ConsultarOid = "SELECT SCOPE_IDENTITY () Oid";
                $Oid = $con ->query($ConsultarOid);
                
                while ($Oid2 = mssql_fetch_array($Oid)){
                    $OidSolicitud = $Oid2['Oid'];
                }
                
                $EditarSolicitud = "UPDATE DnSoliServicio_new
                                    SET EstadoOid = '2'
                                    WHERE Oid = '".$OidSolicitud."'";
                $con -> query($EditarSolicitud);
                
            }
            
            if($this->NecesidadFin == 1){
                 $EditarSolicitud = "UPDATE DnSoliServicio_new
                                        SET EstadoOid = '4'
                                        WHERE Oid = '".$OidSolicitud."'";
                 $con ->query($EditarSolicitud);

                 $EditarSolicitud = "UPDATE DnSoliServicio_new
                                        SET EstadoOid = '8'
                                        WHERE Oid = '".$OidSolicitud."'";
                 $con ->query($EditarSolicitud);

                 $EditarSolicitud = "UPDATE DnSoliServicio_new
                                        SET EstadoOid = '5'
                                        WHERE Oid = '".$OidSolicitud."'";
                 $con ->query($EditarSolicitud);
             }
            $con->cerrarConexion();
        }
        
        
        function ConsultarEstado($FechaInicial,$FechaFinal){
            
            session_start();
            
            $con = new Conexion();
                        
            $FechaI = date('Y-m-d 00:00:00.000',strtotime($FechaInicial));
            $FechaF = date('Y-m-d 23:59:00.000',strtotime($FechaFinal));
            
             if($_SESSION['roll'] == 74){
                 
                 if ($FechaInicial == "" && $FechaFinal == "" ){
                     //$Consulta = "WHERE  T.UsuarioOid = '".$_SESSION['usuario']."' AND (SsFechaC > CONVERT(DATETIME, GETDATE() - 30, 102)) OR (UsuSoliOid = '".$_SESSION['usuario']."' OR UsuRegOid = '".$_SESSION['usuario']."' OR UsuAsigOid ='".$_SESSION['usuario']."')";
                     $Consulta = "WHERE (SsFechaC > CONVERT(DATETIME, GETDATE() - 30, 102)) AND (T.UsuarioOid = '".$_SESSION['usuario']."' OR UsuSoliOid = '".$_SESSION['usuario']."' OR UsuRegOid = '".$_SESSION['usuario']."' OR UsuAsigOid ='".$_SESSION['usuario']."')";
                }else{
                     $Consulta = "WHERE SsFechaC BETWEEN '".$FechaI."' AND '".$FechaF."' AND (  T.UsuarioOid = '".$_SESSION['usuario']."' OR UsuSoliOid = '".$_SESSION['usuario']."' OR UsuRegOid = '".$_SESSION['usuario']."' OR UsuAsigOid ='".$_SESSION['usuario']."')";
                }
                if($this->EstadoId == ""){
                    $Consulta2 = "";
                }else{
                    $Consulta2 = "AND EstadoOid = '".$this->EstadoId."'";
                }
             }else{
                  if ($FechaInicial == "" && $FechaFinal == "" ){
                      $Consulta = "WHERE (SsFechaC > CONVERT(DATETIME, GETDATE() - 30, 102)) AND (UsuSoliOid = '".$_SESSION['usuario']."' OR UsuRegOid = '".$_SESSION['usuario']."' OR UsuAsigOid ='".$_SESSION['usuario']."')";
                  }else{
                      $Consulta = "WHERE SsFechaC BETWEEN '".$FechaI."' AND '".$FechaF."' AND (UsuSoliOid = '".$_SESSION['usuario']."' OR UsuRegOid = '".$_SESSION['usuario']."' OR UsuAsigOid ='".$_SESSION['usuario']."')";
                  }
                  if($this->EstadoId == ""){
                       $Consulta2 = "";
                  }else{
                       $Consulta2 = "AND EstadoOid = '".$this->EstadoId."'";
                  }
             }
             
                $ConsultarEstado = "SELECT Ss.Oid as OidSolicitud,SsFechaC,ServicioOid,GDPNOMBRE,Ss.TipNecesidadOid,TnDescripcion,GeNombe,E.Oid as OidEstado,CARGO.carnombre AS CARGOREG,cast(NEC.NeDescripcion as text) as NeDescripcion,
                                            cast(Ss.SsDescripcion as text)as SsDescripcion,EstadoOid,Ss.TipCasoOid,Ss.PrioridadOid,Ss.SsFechaFin,Ss.TurnoOid,
                                            DATEDIFF(day,Ss.SsFechaC,Ss.SsFechaFin) as OportunidadDias,T.UsuarioOid AS USUARIOENCARGADO,
                                            UsuRegOid,UsuReg.usu_documento AS DOCUSUREG,LTRIM(RTRIM(UsuReg.usu_nombres))+' '+LTRIM(RTRIM(UsuReg.usu_apellidos))AS USUREGISTRO,
                                            UsuAsigOid,UsuAsig.usu_documento,LTRIM(RTRIM(UsuAsig.usu_nombres))+' '+LTRIM(RTRIM(UsuAsig.usu_apellidos))AS USUASIGNADO,
                                            UsuSoliOid, UsuSoli.usu_documento AS DOCUSUSOLI,LTRIM(RTRIM(UsuSoli.usu_nombres))+' '+LTRIM(RTRIM(UsuSoli.usu_apellidos))AS USUSOLICITO,CARGO2.carnombre AS CARGOSOLI,
                                            SER.Oid as OidServicioR,CAT.Oid AS OidCategoria,T.Oid as OidArea,NEC.Oid as OidNecesidad,CAT.CsNombre,COMPONENTES.CANTIDAD AS CANTIDAD_COMPONENTES,COMPONENTES_CANTIDAD.CANTIDAD_COMPO,
                                            CASE WHEN Ss.SsFechaFin IS NULL OR Ss.SsFechaFin = ''  OR Ss.SsFechaFin = '1969-12-31 19:00:00.00' THEN 1 ELSE 2 END AS FECHAOPORTUNIDAD
                                     FROM DnSoliServicio_new AS Ss
                                             LEFT OUTER JOIN usuario AS UsuReg ON UsuRegOid = UsuReg.usu_oid
                                             LEFT OUTER JOIN usuario AS UsuSoli ON UsuSoliOid = UsuSoli.usu_oid
                                             LEFT OUTER JOIN DnCatServicio_new AS CAT ON Ss.OidCatServicio = CAT.Oid
                                             LEFT OUTER JOIN DnNivServicio_new AS SER ON CAT.NivServicioOid = SER.Oid
                                             LEFT OUTER JOIN ".$con->getReal()."..GENDEPEND AS S ON ServicioOid = S.OID
                                             LEFT OUTER JOIN DnTipNecesidad_new AS T ON Ss.TipNecesidadOid = T.Oid
                                             LEFT OUTER JOIN GrlEstado_new AS E ON EstadoOid = E.Oid
                                             LEFT OUTER JOIN gecargo AS CARGO ON UsuReg.caroid = CARGO.caroid
                                             LEFT OUTER JOIN gecargo AS CARGO2 ON UsuSoli.caroid = CARGO2.caroid
                                             LEFT OUTER JOIN DnNecesidad_new AS NEC ON Ss.NecesidadOid = NEC.Oid
                                             OUTER APPLY (SELECT * FROM usuario AS UsuA
                                                          WHERE UsuAsigOid = UsuA.usu_oid)AS UsuAsig
                                             OUTER APPLY(SELECT COUNT(*) AS CANTIDAD 
                                                         FROM DnComponentes_New
                                                         WHERE OidCatServicio = CAT.Oid)AS COMPONENTES
                                             OUTER APPLY(SELECT COUNT(*) AS CANTIDAD_COMPO
                                                         FROM DnSolicitudComponente_New
                                                         WHERE OidSoliServicio = Ss.Oid ) AS COMPONENTES_CANTIDAD
                                             ".$Consulta." ".$Consulta2." 
                                     ORDER BY SsFechaC DESC";
                $re = $con ->query($ConsultarEstado);

                while ($re2 = mssql_fetch_array($re)) {

                    $lista[] = array_map(utf8_encode,$re2);
                }
                print_r(json_encode($lista));
            
            $con ->cerrarConexion();
        }
        
        function TodosEstado($FechaInicial,$FechaFinal){
            
            session_start();
            
            $con = new Conexion();
            
            $FechaI = date('Y-m-d 00:00:00.000',strtotime($FechaInicial));
            $FechaF = date('Y-m-d 23:59:00.000',strtotime($FechaFinal));
            
            if($_SESSION['roll'] == 74){
                if($FechaInicial == "" && $FechaFinal == ""){
                    
                    $Consulta = "WHERE T.UsuarioOid = '".$_SESSION['usuario']."' AND (SsFechaC > CONVERT(DATETIME, GETDATE() - 30, 102)) OR (UsuSoliOid = '".$_SESSION['usuario']."' OR UsuRegOid = '".$_SESSION['usuario']."' OR UsuAsigOid ='".$_SESSION['usuario']."')";
                }else{
                    $Consulta = "WHERE T.UsuarioOid = '".$_SESSION['usuario']."' AND SsFechaC BETWEEN '".$FechaI."' AND '".$FechaF."' OR (UsuSoliOid = '".$_SESSION['usuario']."' OR UsuRegOid = '".$_SESSION['usuario']."' OR UsuAsigOid ='".$_SESSION['usuario']."')";
                }
                
                
            }else{
                if($FechaInicial == "" && $FechaFinal == ""){
                    
                    $Consulta = "WHERE (SsFechaC > CONVERT(DATETIME, GETDATE() - 30, 102)) AND (UsuSoliOid = '".$_SESSION['usuario']."' OR UsuRegOid = '".$_SESSION['usuario']."' OR UsuAsigOid ='".$_SESSION['usuario']."') ";
                }else{
                    $Consulta = "WHERE SsFechaC BETWEEN '".$FechaI."' AND '".$FechaF."' AND (UsuSoliOid = '".$_SESSION['usuario']."' OR UsuRegOid = '".$_SESSION['usuario']."' OR UsuAsigOid ='".$_SESSION['usuario']."')";
                }
                
            }
                $ConsultarEstado = "SELECT Ss.Oid as OidSolicitud,SsFechaC,ServicioOid,GDPNOMBRE,Ss.TipNecesidadOid,TnDescripcion,GeNombe,E.Oid as OidEstado,CARGO.carnombre AS CARGOREG,cast(NEC.NeDescripcion as text) as NeDescripcion,
                                            cast(Ss.SsDescripcion as text)as SsDescripcion,EstadoOid,Ss.TipCasoOid,Ss.PrioridadOid,Ss.SsFechaFin,Ss.TurnoOid,
                                            DATEDIFF(day,Ss.SsFechaC,Ss.SsFechaFin) as OportunidadDias,T.UsuarioOid AS USUARIOENCARGADO,
                                            UsuRegOid,UsuReg.usu_documento AS DOCUSUREG,LTRIM(RTRIM(UsuReg.usu_nombres))+' '+LTRIM(RTRIM(UsuReg.usu_apellidos))AS USUREGISTRO,
                                            UsuAsigOid,UsuAsig.usu_documento,LTRIM(RTRIM(UsuAsig.usu_nombres))+' '+LTRIM(RTRIM(UsuAsig.usu_apellidos))AS USUASIGNADO,
                                            UsuSoliOid, UsuSoli.usu_documento AS DOCUSUSOLI,LTRIM(RTRIM(UsuSoli.usu_nombres))+' '+LTRIM(RTRIM(UsuSoli.usu_apellidos))AS USUSOLICITO,CARGO2.carnombre AS CARGOSOLI,
                                            SER.Oid as OidServicioR,CAT.Oid AS OidCategoria,T.Oid as OidArea,NEC.Oid as OidNecesidad,CAT.CsNombre,COMPONENTES.CANTIDAD AS CANTIDAD_COMPONENTES,COMPONENTES_CANTIDAD.CANTIDAD_COMPO
                                     FROM DnSoliServicio_new AS Ss
                                             LEFT OUTER JOIN usuario AS UsuReg ON UsuRegOid = UsuReg.usu_oid
                                             LEFT OUTER JOIN usuario AS UsuSoli ON UsuSoliOid = UsuSoli.usu_oid
                                             LEFT OUTER JOIN DnCatServicio_new AS CAT ON Ss.OidCatServicio = CAT.Oid
                                             LEFT OUTER JOIN DnNivServicio_new AS SER ON CAT.NivServicioOid = SER.Oid
                                             LEFT OUTER JOIN ".$con->getReal()."..GENDEPEND AS S ON ServicioOid = S.OID
                                             LEFT OUTER JOIN DnTipNecesidad_new AS T ON Ss.TipNecesidadOid = T.Oid
                                             LEFT OUTER JOIN GrlEstado_new AS E ON EstadoOid = E.Oid
                                             LEFT OUTER JOIN gecargo AS CARGO ON UsuReg.caroid = CARGO.caroid
                                             LEFT OUTER JOIN gecargo AS CARGO2 ON UsuSoli.caroid = CARGO2.caroid
                                             LEFT OUTER JOIN DnNecesidad_new AS NEC ON Ss.NecesidadOid = NEC.Oid
                                             OUTER APPLY (SELECT * FROM usuario AS UsuA
                                                          WHERE UsuAsigOid = UsuA.usu_oid)AS UsuAsig
                                             OUTER APPLY(SELECT COUNT(*) AS CANTIDAD 
                                                         FROM DnComponentes_New
                                                         WHERE OidCatServicio = CAT.Oid)AS COMPONENTES
                                             OUTER APPLY(SELECT COUNT(*) AS CANTIDAD_COMPO
                                                         FROM DnSolicitudComponente_New
                                                         WHERE OidSoliServicio = Ss.Oid ) AS COMPONENTES_CANTIDAD
                                     ".$Consulta."
                                     ORDER BY SsFechaC DESC";
                $re = $con ->query($ConsultarEstado);

                while ($re2 = mssql_fetch_array($re)) {

                    $lista[] = array_map(utf8_encode,$re2);
                }
                print_r(json_encode($lista));
        
            $con ->cerrarConexion();
        }
        
        function UsuarioSolicita($Usuario){
           
            $con = new Conexion();
            
             $datos = array();
         
                $sql = "SELECT usu_oid, LTRIM(RTRIM(usu_nombres)) +' '+ LTRIM(RTRIM(usu_apellidos)) AS NOMBRE_USUARIO, usu_tipoUsu
                        FROM usuario 
                        WHERE usu_nombres LIKE '%".$Usuario."%' OR usu_apellidos LIKE '%".$Usuario."%'
                        ORDER BY usu_nombres";

                $resultado = $con-> query($sql);

                while ($row = mssql_fetch_array($resultado)){
                    $datos[] = array ("value"=>$row['NOMBRE_USUARIO'].$row['usu_apellidos'],"Oid"=>$row['usu_oid']);
                }

                return $datos;
            
                $con ->cerrarConexion();
            }
            
            function ConsultarConsolidado($FechaInicial,$FechaFinal){
                
                $con = new Conexion();
                
                $FechaI = date('Y-m-d 00:00:00.000',strtotime($FechaInicial));
                $FechaF = date('Y-m-d 23:59:00.000',strtotime($FechaFinal));
                
                if ($FechaInicial == "" && $FechaFinal == "" ){
                     $Consulta = "AND (SsFechaC > CONVERT(DATETIME, GETDATE() - 30, 102))";
                }else{
                     $Consulta = "AND SsFechaC BETWEEN '".$FechaI."' AND '".$FechaF."'";
                }
                if($this->EstadoId == ""){
                    $Consulta2 = "";
                }else{
                    $Consulta2 = "AND EstadoOid = '".$this->EstadoId."' ";
                }
                if($this->TipoNecesidadId == ""){
                    $Consulta3 = "";
                }else{
                    $Consulta3 = "AND Ss.TipNecesidadOid = '".$this->TipoNecesidadId."'";
                }
                
                $ConsultarConsolidado = "SELECT Ss.Oid as OidSolicitud,SsFechaC,UsuRegOid,UsuReg.usu_documento,LTRIM(RTRIM(UsuReg.usu_nombres))+' '+LTRIM(RTRIM(UsuReg.usu_apellidos))AS USUREGISTRO,
                                        LTRIM(RTRIM(UsuSol.usu_nombres))+' '+LTRIM(RTRIM(UsuSol.usu_apellidos))AS USUSOLICITO,
                                        LTRIM(RTRIM(UsuAsig.usu_nombres))+' '+LTRIM(RTRIM(UsuAsig.usu_apellidos))AS USUASIGNADO,
                                        ServicioOid,GDPNOMBRE,Ss.TipNecesidadOid,TnDescripcion,GeNombe,E.Oid as OidEstado,CargoReg.carnombre,NEC.NeDescripcion,
                                        CAST(Ss.SsDescripcion AS TEXT)AS SsDescripcion,Ss.TipCasoOid,Tc.TcNombre,
                                        Ss.PrioridadOid,Pr.PrNombre,Ss.SsFechaFin
                                        FROM DnSoliServicio_new AS Ss
                                              INNER JOIN usuario AS UsuReg ON UsuRegOid = UsuReg.usu_oid
                                              INNER JOIN usuario AS UsuAsig ON UsuAsigOid = UsuAsig.usu_oid
                                              INNER JOIN ".$con->getReal()."..GENDEPEND AS S ON ServicioOid = S.OID
                                              INNER JOIN DnTipNecesidad_new AS T ON TipNecesidadOid = T.Oid
                                              INNER JOIN GrlEstado_new AS E ON EstadoOid = E.Oid
                                              INNER JOIN gecargo AS CargoReg ON UsuReg.caroid = CargoReg.caroid
                                              INNER JOIN DnNecesidad_new AS NEC ON Ss.NecesidadOid = NEC.Oid
                                              OUTER APPLY(SELECT * 
                                                          FROM DnTipCaso_new AS C 
                                                          WHERE Ss.TipCasoOid = C.Oid)AS Tc
                                              OUTER APPLY(SELECT * 
                                                          FROM DnPrioridad_new AS P
                                                          WHERE Ss.PrioridadOid = P.Oid)AS Pr
                                              OUTER APPLY(SELECT * 
                                                          FROM usuario
                                                          WHERE UsuSoliOid = usu_oid) AS UsuSol
                                     WHERE EstadoOid != ''  ".$Consulta." ".$Consulta2." ".$Consulta3."
                                     ORDER BY SsFechaC DESC";
                
                $r = $con ->query($ConsultarConsolidado);
                
                while ($r2 = mssql_fetch_array($r)) {

                   $lista[] = array_map(utf8_encode,$r2);
                }
                    print_r(json_encode($lista));
                
                $con ->cerrarConexion();
            }
            
            function ConsultarHistorial(){
                
                $con = new Conexion();
                
                $ConsultarHistorial = "SELECT H.Oid AS OidHistorial, H.SsOid,H.Hssfecha,H.UsuarioRegOid,H.UsuarioAsiOid,H.UsuarioSolOid,H.EstadoOid,H.SsDescripcion,H.HssObservaciones,
                                       LTRIM(RTRIM(usu_nombres))+' '+LTRIM(RTRIM(usu_apellidos))AS Usuario_Asignado,E.GeNombe,CAST(Obs.Observacion AS TEXT) AS Observacion
                                       FROM DnHistorialSs_new AS H
                                       INNER JOIN usuario AS U ON H.UsuarioAsiOid = U.usu_oid
                                       INNER JOIN GrlEstado_new AS E ON H.EstadoOid = E.Oid
                                       OUTER APPLY(SELECT * 
                                                   FROM DnObservacionCon_new AS O
                                                   WHERE H.Oid = O.HistorialOid)AS Obs
                                       WHERE SsOid = '".$this->SolicitudId."'";
                $respuesta = $con ->query($ConsultarHistorial);
                 
                while ($respuesta2 = mssql_fetch_array($respuesta)) {

                       $lista[] = array_map(utf8_encode,$respuesta2);
                }
                print_r(json_encode($lista));
                
                $con ->cerrarConexion();
            }
            
            
            function OpcionesSolicitudAsignacion($Observaciones){
        
                $con = new Conexion();

                $update = "update DnSoliServicio_new
                           set EstadoOid = ".$this->EstadoId.",
                               UsuAsigOid = ".$this->UsuarioAsignado."
                           where Oid = ".$this->SolicitudId;
                $con->query($update);
                
                $con->cerrarConexion();
                
                /*Se inserta la observacion al historial creado*/
                $Historial = new DaoHistorial($this->SolicitudId, "", "", "", "", "", "", "", $Observaciones);
                
                $OidHistorial = $Historial->ObservacionesHistorial();
                
                
                print_r(json_encode(array('respuesta'=>'1','OidSolicitud'=>$this->SolicitudId,'OidHistorial'=>$OidHistorial)));

            }
            
            function OpcionesSolicitudRespuesta($Observaciones,$ServicioRequerido,$Categoria,$Necesidad,$ConFechaOportunidad){
                
                $con = new Conexion();

                $FechaFin = date('Y-m-d  H:i:s',strtotime($this->FechaFin));
                
                //Se valida si el campo oportunidad viene con una fecha inferior o vacia
                
                //if($ConFechaOportunidad == 2){
                    
                    /*$update = "update DnSoliServicio_new
                           set EstadoOid = ".$this->EstadoId.",
                                TurnoOid = ".$this->Turno.",
                                PrioridadOid = ".$this->PrioridadId.",
                                TipCasoOid = ".$this->TipoCasoId.",
                                NecesidadOid = ".$Necesidad.",
                                OidCatServicio = ".$Categoria."
                                
                           where Oid =  ".$this->SolicitudId;
                $con->query($update);*/
                    
                //}else if($ConFechaOportunidad == 1){
                    
                    $update = "update DnSoliServicio_new
                           set EstadoOid = ".$this->EstadoId.",
                                TurnoOid = ".$this->Turno.",
                                PrioridadOid = ".$this->PrioridadId.",
                                TipCasoOid = ".$this->TipoCasoId.",
                                SsFechaFin = '".$FechaFin."',
                                NecesidadOid = ".$Necesidad.",
                                OidCatServicio = ".$Categoria."
                                
                           where Oid =  ".$this->SolicitudId;
                $con->query($update);
                    
                //}
                
                
                $con->cerrarConexion();
                
                //Se inserta la observacion al historial creado
                $Historial = new DaoHistorial($this->SolicitudId, "", "", "", "", "", "", "", $Observaciones);
                $Historial->ObservacionesHistorial();
                
                print_r(json_encode(array('respuesta'=>'2','OidSolicitud'=>$this->SolicitudId,'Estado'=>$this->EstadoId)));
                //echo $FechaFin;
            }
            
            function DetalleSolicitud(){
                
                $con = new Conexion();
                
                $DetalleSolicitud = "SELECT * FROM DnSoliServicio_new
                                     WHERE Oid = '".$this->SolicitudId."'";
                $respues = $con ->query($DetalleSolicitud);
                
                 
                while ($respues2 = mssql_fetch_array($respues)) {

                       $lista[] = array_map(utf8_encode,$respues2);
                }
                print_r(json_encode($lista));
                
                $con -> cerrarConexion();
            }
            
            function ConsultarRespuestas(){
                
                $con = new Conexion();
                session_start();
                
                $DetalleSolicitud = "SELECT SOL.Oid as OidSol,NEC.NeDescripcion,EST.GeNombe,EST.Oid
                                     FROM DnSoliServicio_new AS SOL LEFT OUTER JOIN DnNecesidad_new AS NEC ON SOL.NecesidadOid = NEC.Oid
                                                                 LEFT OUTER JOIN GrlEstado_new AS EST ON SOL.EstadoOid = EST.Oid
                                     WHERE UsuRegOid = ".$_SESSION['usuario']." AND (EstadoOid = 4 or EstadoOid = 7 or EstadoOid = 8) AND UsuSoliOid is null";
                $respues = $con ->query($DetalleSolicitud);
                
                 
                while ($respues2 = mssql_fetch_array($respues)) {

                       $lista[] = array_map(utf8_encode,$respues2);
                }
                print_r(json_encode($lista));
                
                $con -> cerrarConexion();
            }
            
            function ConsultarRespuestas2(){
                
                $con = new Conexion();
                session_start();
                
                $DetalleSolicitud = "SELECT SOL.Oid as OidSol,NEC.NeDescripcion,EST.GeNombe,EST.Oid
                                    FROM DnSoliServicio_new AS SOL LEFT OUTER JOIN DnNecesidad_new AS NEC ON SOL.NecesidadOid = NEC.Oid
                                                                LEFT OUTER JOIN GrlEstado_new AS EST ON SOL.EstadoOid = EST.Oid
                                    WHERE UsuSoliOid = ".$_SESSION['usuario']." AND (EstadoOid = 4 or EstadoOid = 7 or EstadoOid = 8)
                                    ORDER BY SOL.Oid desc";
                $respues = $con ->query($DetalleSolicitud);
                
                 
                while ($respues2 = mssql_fetch_array($respues)) {

                       $lista[] = array_map(utf8_encode,$respues2);
                }
                print_r(json_encode($lista));
                
                $con -> cerrarConexion();
            }
            
            function ConsultarSolicitud(){
                
                $con = new Conexion();
                
                $select = " SELECT Ss.Oid as OidSolicitud,SsFechaC,ServicioOid,GDPNOMBRE,Ss.TipNecesidadOid,TnDescripcion,GeNombe,E.Oid as OidEstado,CARGO.carnombre AS CARGOREG,cast(NEC.NeDescripcion as text) as NeDescripcion,
                                            cast(Ss.SsDescripcion as text)as SsDescripcion,EstadoOid,Ss.TipCasoOid,Ss.PrioridadOid,Ss.SsFechaFin,Ss.TurnoOid,
                                            DATEDIFF(day,Ss.SsFechaC,Ss.SsFechaFin) as OportunidadDias,T.UsuarioOid AS USUARIOENCARGADO,
                                            UsuRegOid,UsuReg.usu_documento AS DOCUSUREG,LTRIM(RTRIM(UsuReg.usu_nombres))+' '+LTRIM(RTRIM(UsuReg.usu_apellidos))AS USUREGISTRO,
                                            UsuAsigOid,UsuAsig.usu_documento,LTRIM(RTRIM(UsuAsig.usu_nombres))+' '+LTRIM(RTRIM(UsuAsig.usu_apellidos))AS USUASIGNADO,
                                            UsuSoliOid, UsuSoli.usu_documento AS DOCUSUSOLI,LTRIM(RTRIM(UsuSoli.usu_nombres))+' '+LTRIM(RTRIM(UsuSoli.usu_apellidos))AS USUSOLICITO,CARGO2.carnombre AS CARGOSOLI,
                                            SER.Oid as OidServicioR,CAT.Oid AS OidCategoria,T.Oid as OidArea,NEC.Oid as OidNecesidad,CAT.CsNombre,COMPONENTES.CANTIDAD AS CANTIDAD_COMPONENTES,COMPONENTES_CANTIDAD.CANTIDAD_COMPO,
                                            CASE WHEN Ss.SsFechaFin IS NULL OR Ss.SsFechaFin = ''  OR Ss.SsFechaFin = '1969-12-31 19:00:00.00' THEN 1 ELSE 2 END AS FECHAOPORTUNIDAD
                                     FROM DnSoliServicio_new AS Ss
                                             LEFT OUTER JOIN usuario AS UsuReg ON UsuRegOid = UsuReg.usu_oid
                                             LEFT OUTER JOIN usuario AS UsuSoli ON UsuSoliOid = UsuSoli.usu_oid
                                             LEFT OUTER JOIN DnCatServicio_new AS CAT ON Ss.OidCatServicio = CAT.Oid
                                             LEFT OUTER JOIN DnNivServicio_new AS SER ON CAT.NivServicioOid = SER.Oid
                                             LEFT OUTER JOIN ".$con->getReal()."..GENDEPEND AS S ON ServicioOid = S.OID
                                             LEFT OUTER JOIN DnTipNecesidad_new AS T ON Ss.TipNecesidadOid = T.Oid
                                             LEFT OUTER JOIN GrlEstado_new AS E ON EstadoOid = E.Oid
                                             LEFT OUTER JOIN gecargo AS CARGO ON UsuReg.caroid = CARGO.caroid
                                             LEFT OUTER JOIN gecargo AS CARGO2 ON UsuSoli.caroid = CARGO2.caroid
                                             LEFT OUTER JOIN DnNecesidad_new AS NEC ON Ss.NecesidadOid = NEC.Oid
                                             OUTER APPLY (SELECT * FROM usuario AS UsuA
                                                          WHERE UsuAsigOid = UsuA.usu_oid)AS UsuAsig
                                             OUTER APPLY(SELECT COUNT(*) AS CANTIDAD 
                                                         FROM DnComponentes_New
                                                         WHERE OidCatServicio = CAT.Oid)AS COMPONENTES
                                             OUTER APPLY(SELECT COUNT(*) AS CANTIDAD_COMPO
                                                         FROM DnSolicitudComponente_New
                                                         WHERE OidSoliServicio = Ss.Oid ) AS COMPONENTES_CANTIDAD
                                 OUTER APPLY(SELECT COUNT(*) AS CANTIDAD 
                                             FROM DnHistorialSs_new 
                                             WHERE DnHistorialSs_new.SsOid = Ss.Oid AND DnHistorialSs_new.EstadoOid = 7) AS NUMERO_TRAMITE
                            WHERE Ss.Oid = ".$this->SolicitudId;
                $respues = $con ->query($select);
                
                while ($respues2 = mssql_fetch_array($respues)) {

                       $lista[] = array_map(utf8_encode,$respues2);
                       $Estado = $respues2['OidEstado'];
                }
                
                print_r(json_encode($lista));
                
                /*Se saca el estado actual de la solicitud para validar si esta ya esta verificada por el usuario*/
                
                if($Estado == '4'){
                    
                    $update = "UPDATE DnSoliServicio_new 
                                 SET EstadoOid = 8
                                 WHERE Oid =".$this->SolicitudId;
                    $con->query($update);
                    
                }
                
                $con -> cerrarConexion();
                
            }
            
            function OpcionesSolicitudTramiteCliente($Observaciones){
                
                $con = new Conexion();

                $update = "update DnSoliServicio_new
                           set EstadoOid = 7
                           where Oid = ".$this->SolicitudId;
                $con->query($update);
                
                $con->cerrarConexion();
                
                /*Se inserta la observacion al historial creado*/
                $Historial = new DaoHistorial($this->SolicitudId, "", "", "", "", "", "", "", $Observaciones);
                
                $Historial->ObservacionesHistorial();
                
                
                print_r(json_encode(array('OidSolicitud'=>$this->SolicitudId)));
                
            }
            
            function DatosClasificacion(){
                
                $con = new Conexion();
                
                $DatosClasificacion = "SELECT * FROM DnNivServicio_new 
                                        WHERE TipNecesidadOid = '".$this->TipoNecesidadId."'
                                        ORDER BY NsNombre ASC";
                $respues = $con ->query($DatosClasificacion);
                
                 
                while ($respues2 = mssql_fetch_array($respues)) {

                       $lista[] = array_map(utf8_encode,$respues2);
                }
                print_r(json_encode($lista));
                
                $con -> cerrarConexion();
            }
            
            function DatoNecesidad($NombreClasificacio){
                $con = new Conexion();
                
                $DatosClasificacion = "SELECT N.Oid AS NesecidadOid,N.NeDescripcion
                                       FROM DnNecesidad_new AS N
                                       LEFT OUTER JOIN DnTipNecesidad_new AS TN ON N.TipNecesidadOid = TN.Oid
                                       WHERE N.TipNecesidadOid = ".$NombreClasificacio;
                $respues = $con ->query($DatosClasificacion);
                
                 
                while ($respues2 = mssql_fetch_array($respues)) {

                       $lista[] = array_map(utf8_encode,$respues2);
                }
                print_r(json_encode($lista));
                
                $con -> cerrarConexion();
            }
            
            function ConsultarCategoria($Area){
                $con = new Conexion();
                
                $DatosClasificacion = "SELECT * FROM DnCatServicio_new
                                        WHERE TipNecesidadOid =  '".$Area."'";
                $respues = $con ->query($DatosClasificacion);
                
                 
                while ($respues2 = mssql_fetch_array($respues)) {

                       $lista[] = array_map(utf8_encode,$respues2);
                }
                print_r(json_encode($lista));
                
                $con -> cerrarConexion();
            }
            
            function ReasignarUsuario(){
                
                $con = new Conexion();
                
                $stmt = mssql_init('Usp_DnAsignarCaso');
                $Mensaje = 0;
        
                mssql_bind($stmt, '@OID', $this->SolicitudId, SQLINT4);
                mssql_bind($stmt, '@USUARIO_ASIGNADO', $this->UsuarioAsignado, SQLINT4);
                mssql_bind($stmt, 'RETVAL', $Mensaje, SQLINT4);

                mssql_execute($stmt);
                
                print_r(json_encode($Mensaje));
                
                $con -> cerrarConexion();
            }
    }
?>